YES(O(1),O(1))

We are left with following problem, upon which TcT provides the
certificate YES(O(1),O(1)).

Strict Trs:
  { filter(cons(X), 0(), M) -> cons(0())
  , filter(cons(X), s(N), M) -> cons(X)
  , sieve(cons(0())) -> cons(0())
  , sieve(cons(s(N))) -> cons(s(N))
  , nats(N) -> cons(N)
  , zprimes() -> sieve(nats(s(s(0())))) }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(1))

We use the processor 'Small Polynomial Path Order (PS,1-bounded)'
to orient following rules strictly.

Trs:
  { filter(cons(X), 0(), M) -> cons(0())
  , filter(cons(X), s(N), M) -> cons(X)
  , sieve(cons(0())) -> cons(0())
  , sieve(cons(s(N))) -> cons(s(N))
  , nats(N) -> cons(N)
  , zprimes() -> sieve(nats(s(s(0())))) }

The induced complexity on above rules (modulo remaining rules) is
YES(?,O(1)) . These rules are moved into the corresponding weak
component(s).

Sub-proof:
----------
  The input was oriented with the instance of 'Small Polynomial Path
  Order (PS,1-bounded)' as induced by the safe mapping
  
   safe(filter) = {3}, safe(cons) = {1}, safe(0) = {}, safe(s) = {1},
   safe(sieve) = {1}, safe(nats) = {1}, safe(zprimes) = {}
  
  and precedence
  
   filter > sieve, filter > nats, sieve > nats, zprimes > sieve,
   zprimes > nats, filter ~ zprimes .
  
  Following symbols are considered recursive:
  
   {}
  
  The recursion depth is 0.
  
  For your convenience, here are the satisfied ordering constraints:
  
       filter(cons(; X),  0(); M) > cons(; 0())                   
                                                                  
    filter(cons(; X),  s(; N); M) > cons(; X)                     
                                                                  
             sieve(; cons(; 0())) > cons(; 0())                   
                                                                  
          sieve(; cons(; s(; N))) > cons(; s(; N))                
                                                                  
                        nats(; N) > cons(; N)                     
                                                                  
                        zprimes() > sieve(; nats(; s(; s(; 0()))))
                                                                  

We return to the main proof.

We are left with following problem, upon which TcT provides the
certificate YES(O(1),O(1)).

Weak Trs:
  { filter(cons(X), 0(), M) -> cons(0())
  , filter(cons(X), s(N), M) -> cons(X)
  , sieve(cons(0())) -> cons(0())
  , sieve(cons(s(N))) -> cons(s(N))
  , nats(N) -> cons(N)
  , zprimes() -> sieve(nats(s(s(0())))) }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(1))

Empty rules are trivially bounded

Hurray, we answered YES(O(1),O(1))